package cn.zhz.privacy.annotation;

import cn.zhz.privacy.sensitive.SensitiveType;

import java.lang.annotation.*;

/**
 * @author ZHZ
 * @date 2021-11-22
 * @apiNote
 */

@Documented
@Inherited
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD, ElementType.ANNOTATION_TYPE})
public @interface FieldDesensitize {

//    /**
//     * 填充值
//     *
//     * @return
//     */
//    String fillValue() default "*";
//
//    /**
//     * 脱敏器
//     *
//     * @return
//     */
//    Class<? extends IDesensitizer> desensitizer() default DefaultDesensitizer.class;

    /**
     * 脱敏类型
     * 不同的脱敏类型置换*的方式不同
     * @return SensitiveType
     */
    SensitiveType value();
}
